using Shifter.Tests.Interfaces;

namespace Shifter.Tests.MockClasses
{
    public class ImplementsResolveTestWithParameters : IResolveTest
    {
        private readonly string param1;

        [Inject]
        private string fieldToInject;

        public ImplementsResolveTestWithParameters(string param1)
        {
            this.param1 = param1;
        }

        public string FieldToInject
        {
            get
            {
                return fieldToInject;
            }
        }

        public string Param1
        {
            get
            {
                return param1;
            }
        }

        public string MethodFieldInjected { get; set; }

        [Inject]
        public string PropertyInjected { get; set; }

        [Inject]
        private void SetMethodField(string value)
        {
            MethodFieldInjected = value;
        }
    }
}